#include<stdio.h>
#include<string.h>

int main()
{
	struct Command
	{
		char state1[21];
		char in[2];
		char out[2];
		char move[2];
		char state2[21];
		
	}command[31];
	int n=0;
	scanf("%d",&n);
	int i=0,j=0,k=0;
	for(i=0;i<n;i++)
	{
		scanf("%s %s %s %s %s",command[i].state1,command[i].in,command[i].out,command[i].move,command[i].state2);
	}
	
	char In[101]={0};
	int flag=0;

	scanf("%s",In);
	// getchar();
	int len = strlen(In);
	for( i = 0 ; i < len; i++ )
	{
		// scanf("%c",&In[i]);
		
		if(In[i]=='*')
		{
			flag++;
		}
		if(flag==2)
		{
			k=i;
			flag=0;
		}
		// if(In[i]=='\n')
		// {
		// 	len=i;
		// 	break;
		// }
	}
	
	char nowState[21]="INIT";
	char end[]="STOP";
	
	// int t=0;
	for(i=k;;)
	{
		if(strcmp(nowState,end)==0)
		{
			break;
		}
		
		for(j=0;j<n;j++)
		{
			if(strcmp(nowState,command[j].state1)==0&&In[i]==command[j].in[0])
			{
				In[i]=command[j].out[0];
				if(command[j].move[0]=='L') i++;
				else if(command[j].move[0]=='R') i--;
				strcpy(nowState,command[j].state2);
				
				break;
			}
		}
	}
	
	flag=0;
	
	for(i=0;i<len;i++)
	{
		if(In[i]=='*')
		{
			flag++;
		}
		else if(flag==1)
		{
			printf("%c",In[i]);
		}
	}
	
	return 0;
}